package com.lh.consume;

import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.ReferenceConfig;
import com.alibaba.dubbo.config.RegistryConfig;
import com.sise.service.UserRpcService;

/**
 * 作者：idea
 * 日期：2018/8/11
 * 描述：不通过spring配置进行的dubbo消费者
 */
public class MyConsumer {
    public static void main(String[] args) throws InterruptedException {
        System.out.println("开始从zookeeper里面调用服务");
        //除了常规的xml来编写注册配置信息以外，还可以通过相应的代码来实现远程调用
        ApplicationConfig applicationConfig=new ApplicationConfig();
        //注意 这里的applicationConfig名称尽量不要和生产者那边的名称一致
        applicationConfig.setName("service-consumer");
        //注册中心的连接配置
        RegistryConfig registryConfig=new RegistryConfig();
        registryConfig.setAddress("zookeeper://127.0.0.1:2181");
        //远程调用的服务引用
        ReferenceConfig<UserRpcService> referenceConfig=new ReferenceConfig<>();
        referenceConfig.setApplication(applicationConfig);
        referenceConfig.setRegistry(registryConfig);
        referenceConfig.setInterface(UserRpcService.class);

        UserRpcService userRpcService=referenceConfig.get();
        System.out.println("this is :"+userRpcService.getUserName("idea"));

    }
}
